package com.alex.wechat.mp.message.receive.entity;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Lob;
import javax.persistence.Table;

import org.jeecgframework.core.common.entity.IdEntity;

/**
 * 文本消息存储实体类
 * 
 * @author Debenson
 * @since 0.1
 */
@Entity
@Table(name = "wx_receivetext")
public class WxReceiveText extends IdEntity {
  private static final long serialVersionUID = -7694519294293739727L;

  // 开发者微信号
  private String toUserName;
  // 发送方帐号（一个OpenID）
  private String fromUserName;
  // 消息类型（text/image/location/link）
  private String msgType;
  // 消息id，64位整型
  private String msgId;
  // 消息内容
  private String content;
  // 是否回复
  private String response;
  // 回复内容
  private String rescontent;
  // 用户昵称
  private String nickName;
  // 微信账号Id
  private String accountId;
  private String event;
  private String eventKey;
  private String pictureUrl;
  private String mediaId;
  private String thumbMediaId;
  private String format;
  private String recognition;
  private String locationX;
  private String locationY;
  private String locationLabel;
  /** 创建日期 */
  private java.util.Date createDate;
  /** 更新日期 */
  private java.util.Date updateDate;

  /**
   * 方法: 取得更新日期
   * 
   * @return 更新日期
   */
  @Column(name = "UPDATE_DATE", nullable = true, length = 20)
  public java.util.Date getUpdateDate() {
    return this.updateDate;
  }

  /**
   * 方法: 设置更新日期
   *
   * @param updateDate
   *          更新日期
   */
  public void setUpdateDate(java.util.Date updateDate) {
    this.updateDate = updateDate;
  }

  /**
   * 方法: 取得创建日期
   * 
   * @return 创建日期
   */
  @Column(name = "CREATE_DATE", nullable = true, length = 20)
  public java.util.Date getCreateDate() {
    return this.createDate;
  }

  /**
   * 方法: 设置创建日期
   *
   * @param createDate
   *          创建日期
   */
  public void setCreateDate(java.util.Date createDate) {
    this.createDate = createDate;
  }

  /**
   * 纬度
   * 
   * @return
   */
  @Column(name = "locationX", length = 20)
  public String getLocationX() {
    return locationX;
  }

  public void setLocationX(String locationX) {
    this.locationX = locationX;
  }

  /**
   * 经度
   * 
   * @return
   */
  @Column(name = "locationY", length = 20)
  public String getLocationY() {
    return locationY;
  }

  public void setLocationY(String locationY) {
    this.locationY = locationY;
  }

  /**
   * 位置说明
   * 
   * @return
   */
  @Column(name = "locationLabel", length = 100)
  public String getLocationLabel() {
    return locationLabel;
  }

  public void setLocationLabel(String locationLabel) {
    this.locationLabel = locationLabel;
  }

  /** 缩略图媒体标识 */
  @Column(name = "thumbMediaId", length = 100)
  public String getThumbMediaId() {
    return thumbMediaId;
  }

  public void setThumbMediaId(String thumbMediaId) {
    this.thumbMediaId = thumbMediaId;
  }

  /** 多媒体的格式 */
  @Column(name = "format", length = 20)
  public String getFormat() {
    return format;
  }

  public void setFormat(String format) {
    this.format = format;
  }

  /**
   * 自动识别的内容，如语音识别的内容等。
   * 
   * @return
   */
  @Lob
  @Column(name = "recognition")
  public String getRecognition() {
    return recognition;
  }

  public void setRecognition(String recognition) {
    this.recognition = recognition;
  }

  /**
   * 图片url
   * 
   * @return
   */
  @Column(name = "pictureUrl", length = 128)
  public String getPictureUrl() {
    return pictureUrl;
  }

  public void setPictureUrl(String pictureUrl) {
    this.pictureUrl = pictureUrl;
  }

  /**
   * 多媒体标识
   * 
   * @return
   */
  @Column(name = "mediaId", length = 100)
  public String getMediaId() {
    return mediaId;
  }

  public void setMediaId(String mediaId) {
    this.mediaId = mediaId;
  }

  /**
   * 事件key
   * 
   * @return
   */
  @Column(name = "eventKey", length = 256)
  public String getEventKey() {
    return eventKey;
  }

  public void setEventKey(String eventKey) {
    this.eventKey = eventKey;
  }

  /**
   * 事件名称
   * 
   * @return
   */
  @Column(name = "event", length = 50)
  public String getEvent() {
    return event;
  }

  public void setEvent(String event) {
    this.event = event;
  }

  /**
   * 开发者微信号
   * 
   * @return
   */
  @Column(name = "tousername", length = 100)
  public String getToUserName() {
    return toUserName;
  }

  public void setToUserName(String toUserName) {
    this.toUserName = toUserName;
  }

  /**
   * 发送方帐号（一个OpenID）
   * 
   * @return
   */
  @Column(name = "fromusername", length = 100)
  public String getFromUserName() {
    return fromUserName;
  }

  public void setFromUserName(String fromUserName) {
    this.fromUserName = fromUserName;
  }

  /**
   * 消息类型（text/image/location/link）
   * 
   * @return
   */
  @Column(name = "msgtype", length = 20)
  public String getMsgType() {
    return msgType;
  }

  public void setMsgType(String msgType) {
    this.msgType = msgType;
  }

  /**
   * 消息id，64位整型
   * 
   * @return
   */
  @Column(name = "msgid", length = 30)
  public String getMsgId() {
    return msgId;
  }

  public void setMsgId(String msgId) {
    this.msgId = msgId;
  }

  /**
   * 消息内容
   * 
   * @return
   */
  @Lob
  @Column(name = "content")
  public String getContent() {
    return content;
  }

  public void setContent(String content) {
    this.content = content;
  }

  /**
   * 是否回复, Y/N
   * 
   * @return
   */
  @Column(name = "response", length = 1)
  public String getResponse() {
    return response;
  }

  public void setResponse(String response) {
    this.response = response;
  }

  /**
   * 回复内容
   * 
   * @return
   */
  @Lob
  @Column(name = "rescontent")
  public String getRescontent() {
    return rescontent;
  }

  public void setRescontent(String rescontent) {
    this.rescontent = rescontent;
  }

  /**
   * 用户昵称
   * 
   * @return
   */
  @Column(name = "nickname", length = 100)
  public String getNickName() {
    return nickName;
  }

  public void setNickName(String nickName) {
    this.nickName = nickName;
  }

  /**
   * 微信账号Id
   * 
   * @return
   */
  @Column(name = "accountid", length = 50)
  public String getAccountId() {
    return accountId;
  }

  public void setAccountId(String accountId) {
    this.accountId = accountId;
  }

}
